/**********************************************************************
Funciones para manejar el SEM Logger
Archivo: sem_logger.h, Proyecto SEM, SISEM 2011, 9/6/2011, sebfer, juliano
**********************************************************************/ 


//---------------  Constantes  ----------------
#define MAX_LOG_ITEMS 30  


// estructura de los items que se guardan en la cola del log
// salvo q, el resto de los elementos de la estructura pueden quitarse, cambiarse o agregar nuevos.
typedef struct log_item_t {
  float q;       // obligatorio
  char id;       // opcional
  int sequence;  // opcional
} log_item_t;

//---------- funciones públicas ----------
void sem_log_init(void);    // inicializa la cola donde se guardan los items
void sem_log_partial_q(log_item_t item); // adquiere consumo parcial y lo guarda en ela cola. Recibe un item con todos los campos inicializados salvo q
int sem_log_isempty(void); // devuelve 0 si la cola no esta vacia
log_item_t sem_log_get_item(void); // devulelve el último item de la cola

